Evaluating the Travel Burden of the 2019-2020 NBA Schedule
A Presentation by John Sugden
Full Disclosure
- I’m a poser
- no favorite team, no skin in the game
- I’m a nerd
- love the stats more than the games themselves
- I like to travel
- BUT, it can be exhausting
My Idea
- Evaulate the travel burden of each NBA team this upcoming season
- 30 NBA teams
- Each team plays 82 games per year
- Each team plays at each stadium at least once
30 Teams, 29 Stadiums
![]()
Distance Between Stadiums
- Identified the nearest international airport to each NBA stadium
- Looked up the stadium’s geo-coordinates
- Used R to measure the distance
- geosphere package
- distm() function
- distVincentyEllipsoid parameter (“great circle distance”)
Distance Between Stadiums
![]()
Evaluating Existing Schedule
2019-2020 Schedule, Visualized
![]()
Approximate Seasonal Air Travel
![]()
Utah Jazz
![]()
Sacramento Kings
![]()
Cleveland Cavaliers
![]()
Expected vs Actual: Simple Heuristics
- Teams near the coast expected to travel more than team in the midwest
- Rang true for:
- Portland
- Sacramento
- Indiana
- Chicago
- Outliers:
- Utah
- Los Angeles (Lakers and Clippers)
- Memphis
Expected vs Actual: Quantitative Approach
- Normalize average distance from stadiums (“expected”)
- Normalize total distance traveled (“actual”)
- Compare the two normalized metrics
Expected vs Actual Burden
![]()
We Found a Problem…
- I’ve pointed out the Uneven travel burden for NBA teams
- NBA could fix it, if they wanted to, but distance isn’t the NBA’s only concern when setting schedules
Fine, I’ll Do it Myself
![]()
Optimizing Schedule Burden
- Use operations research methods to propose more parity in annual travel burden
- Relax some assumptions in lieu of practicality
NBA Schedule Constraints
Each team plays:
- 82 games a year
- 41 at home and 41 on the road
- team in their division 4 times per season
- team in their conference 3-4 times per season
- team in opposing conference 2 times per season
- in each stadium at least once per season
Relaxed assumptions
- Will keep the intra-division games as-is
- Will keep the opposing conference games as-is
Thus, will only model the 3-4 intra-conference games